package kr.co.doriclassic.chapter25.chat;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
import java.net.UnknownHostException;

public class QuizClient {
	public static void main(String[] args) throws IOException {
		Socket quizSocket = null;
		
		//서버로 보내기 위한 출력 스트림
		PrintWriter out=null;
		
		//서버에서 온 메시지를 읽기 위한 입력 스트림
		BufferedReader in = null;
		
		//키보드로 부터 입력받기 위한 입력 스트림
		BufferedReader user = null;

		//서버로부터 온 메시지
		String serverMsg;
		//서버로 보낸 메시지
		String sendMsg;

		try {
			quizSocket = new Socket("localhost", 5555);
			out = new PrintWriter(quizSocket.getOutputStream(), true);
			in = new BufferedReader(new InputStreamReader(quizSocket.getInputStream()));
			user = new BufferedReader(new InputStreamReader(System.in));//키보드
			
		} catch (UnknownHostException e) {
			System.err.println("localhost 에 접근 안됨");
			System.exit(1);
		}
		
		while((serverMsg = in.readLine())!=null){
			System.out.println("서버 : "+serverMsg);//서버로부터 온 메시지 출력
			
			if(serverMsg.equalsIgnoreCase("quit")){
				break;
			}
			sendMsg =user.readLine();//키보드로 입력
			if(sendMsg!=null){
				System.out.println("클라이언트 : "+sendMsg);
				out.println(sendMsg);
			}
		}
		//읽은 것의 역순으로 종료
		user.close();
		in.close();
		out.close();
		quizSocket.close();
	}
}
